#include<stdio.h>
int used[9]={0};
int path[10];
void dfs(int depth,int k)
{
	if(depth==k){
		for(int i=1;i<=k;i++){
			printf("%d",path[i]);
		}
		printf("\n");
		return;
	}
	for(int i=1;i<=9;i++){
		if(depth==0&&path[i]==0) continue;
		
		if(used[i]) continue;
		
		if(depth<k){
			used[i]=1;
			path[i]=i;
			dfs(depth+1,k);
			used[i]=0;
		}
	}
}

int main()
{
	int k;
	scanf("%d",&k);
	dfs(0,k);
	return 0;
}
